using IcsSEMCtrl.Event.Device;
using System;
namespace Lifter.Event.Lifter
{
	[Serializable]
	public class LifterPortDirectionEvent : DeviceEvent
	{
		public enum enumLifterPortDirectionEventType
		{
			OUTPUTENABLE = 1,
			INOUTMODE,
			BIMODE,
			OUTPUTRFDISABLE,
			DIRECTIONCHANGEENABLE,
			DIRECTIONCHANGING,
			NOTCHANGE,
			PORTENABLE,
		}
		public static readonly string CLASS = "LifterPortDirectionEvent";
		public static readonly string SPECIFIC_SUBJECT = "LifterPortDirection";
		public new static readonly string SUBJECT = DeviceEvent.SUBJECT + "." + LifterPortDirectionEvent.SPECIFIC_SUBJECT;
		private string lifterPortId;
		private LifterPortDirectionEvent.enumLifterPortDirectionEventType portDirEvent;
		public string LifterPortId
		{
			get
			{
				return this.lifterPortId;
			}
			set
			{
				this.lifterPortId = value;
			}
		}
		public LifterPortDirectionEvent.enumLifterPortDirectionEventType PortDirEvent
		{
			get
			{
				return this.portDirEvent;
			}
			set
			{
				this.portDirEvent = value;
			}
		}
		public LifterPortDirectionEvent(string deviceId, string deviceType, string lifterPortId, LifterPortDirectionEvent.enumLifterPortDirectionEventType portDirEvent) : base(deviceId, deviceType)
		{
			this.lifterPortId = lifterPortId;
			this.portDirEvent = portDirEvent;
			base.SetSubject(this.CreateSubject(lifterPortId));
		}
		protected new string CreateSubject(string id)
		{
			return LifterPortDirectionEvent.FormSubject(id);
		}
		public new static string FormSubject(string id)
		{
			return LifterPortDirectionEvent.SUBJECT + "." + id;
		}
	}
}
